//  Grunt  入口文件
// 用于一定一些需要grunt自动执行的任务

module.exports = grunt => {
  // 配置文件
  grunt.initConfig({
    foo: 'bar',
  })
  // 注册任务
  // grunt.registerTask('foo', () => {
  //   console.log('hello grunt')
  //   console.log(grunt.config('foo'))
  // })

  // grunt.registerTask('bar', '任务描述', () => {
  //   console.log('other tesk')
  // })

  // // 标记失败的任务
  // grunt.registerTask('error', () => {
  //   console.log('error 失败')
  //   return false
  // })

  // // 异步任务
  // grunt.registerTask('async-task', function () {
  //   const done = this.async()
  //   setTimeout(() => {
  //     console.log('setTimeout')
  //     done()
  //   }, 1000)
  // })

  // grunt.registerTask('default', ['foo', 'bar', 'error', 'async-task'])

  // 多目标任务 grunt.registerMultiTask()
  grunt.initConfig({
    build: {
      options: {
        foo: 'bar',
      },
      css: {
        options: {
          foo: 'css',
        },
      },
      js: 2,
      html: [1, 2, 3, 4],
    },
  })
  grunt.registerMultiTask('build', function () {
    console.log('build task')
    console.log(this.options())
    console.log(`target: ${this.target}, data: ${this.data}`)
  })
}
